iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0
自我挑戰組

資料結構面面觀系列 第 5

撰寫演算法的五個原則(下)

  • 分享至 

  • xImage
  •  

3.有限性(Finiteness):演算法不能有無窮迴路,必須能終止執行,亦即必須在有限的步驟內完成。

由於演算法並非是真正可以執行的程式。但是,真正的程式是可以有無窮迴路的動作。

例如:Windows 作業系統(系統程式)除非系統開機或當機,否則它會永遠執行一個「等待迴圈」,來等待使用者從鍵盤輸入或其他的輸入設備。

4.正確性(Correctness):既然演算法是解決問題的方法,因此,正確性是最基本的要求。

例如:以下判斷某數為奇偶數的演算法,雖然符合「明確性」•但是「不正確」,因為N除以2,其餘數為0.則N應該為「偶數」,而非「奇數」。

(1)輸入一個正整數N。

(2)如果N 除以2,其餘數為0。

(3)則其N為奇數。應該改為「偶數」

5.輸出(Output):至少一個輸出。

例如:在電腦中,處理資料的基本過程有三個步驟:
輸入 處理 輸出
(原始資料)(程式)(有用的資訊)
所以,使用電腦來為我們處理資料時,有可能是系統自動接收到一個訊號,來當作輸入資料,但是系統至少會輸出一項讓使用者參考的有用資訊。


上一篇
撰寫演算法的五個原則(上)
下一篇
描述演算法的三種方式
系列文
資料結構面面觀13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言